package com.jiang.common;

/**
 * @Description:状态码枚举类
 */
public enum StatusEnum {

	/**
	 * 请求成功
	 */
	SUCCESS("10000", "OK"),

	/**
	 * 只有查看权限，无写权限
	 */
	ONLY_READ("20001", "只有查看权限，无写权限"),

	/**
	 * 权限拦截，无权限时的异常
	 */
	UNAUTHORIZED("20002", "无权限进行此操作，请跟管理员联系"),

	/**
	 * 缺少必选参数"
	 */
	ERROR_40001("40001", "缺少必选参数"),

	/**
	 * 传入参数不合法
	 */
	ERROR_40002("40002", "非法的参数"),

	/**
	 * 未登陆
	 */
	NOSESSION("40003", "未登录，请先登录"),

	/**
	 * 不合法的业务请求，比如直接删除管理有很多用户的用户组
	 */
	FORBIDDEN("40004", "业务处理失败，请检查请求参数"),

	/**
	 * //所有内部异常，统一如此相应
	 */
	BUSINESS("40005", "服务器忙，请稍后再次尝试，或者跟管理员联系"),

	/**
	 * 操作的资源不存在，比如 /user/{id}的增删查改等操作请求
	 */
	NORESOURCE("40010", "请求的资源不存在"),

	/**
	 * 用户名错误
	 */
	USER_WRONG("41001", "用户名不存在"),

	/**
	 * 密码错误
	 */
	PASSWORD_WRONG("41002", "密码错误"),

	/**
	 * 账号未激活，请联系管理员
	 */
	USER_NOT_ACTIVED("41003", "账号未激活，请联系管理员"),
	
	/**
	 * 新老平台账号出现错误统一状态，具体错误由具体状态码决定
	 */
	USER_NOT_MIGRATE("41004", "新老平台账号有问题"),
	
	/**
	 * 支付宝授权令牌无效
	 */
	TOKEN_INVALID("41005", "支付宝授权令牌无效");

	final private String code;
	final private String message;

	private StatusEnum(String code, String message) {
		this.code = code;
		this.message = message;
	}

	public String getCode() {
		return code;
	}

	public String getMessage() {
		return message;
	}
}
